0b29af8a9e1a43c3ddf9f19b216867376c902522,core/src/main/java/com/orientechnologies/orient/core/serialization/serializer/record/string/ORecordSerializerCSVAbstract.java,ORecordSerializerCSVAbstract,embeddedMapToStream,#ODatabaseComplex#OUserObject2RecordHandler#OClass#OType#Object#Set#boolean#,386
Before Change
buffer.append(OStringSerializerHelper.PARENTHESIS_END);
} else if (o.getValue() instanceof Map<?, ?>) {
// SUB MAP
buffer.append(fieldTypeToString(iDatabase, OType.EMBEDDEDMAP, o.getValue()));
} else {
// EMBEDDED LITERALS
if (iLinkedType == null)
After Change
public String embeddedMapToStream(final ODatabaseComplex<?> iDatabase, final OUserObject2RecordHandler iObjHandler,
final OClass iLinkedClass, OType iLinkedType, final Object iValue, final Set<Integer> iMarshalledRecords,
final boolean iSaveOnlyDirty) {
final StringBuilder buffer = new StringBuilder();
buffer.append(OStringSerializerHelper.MAP_BEGIN);
if (iValue != null) {
int items = 0;
// EMBEDDED OBJECTS
ODocument record;
for (Entry<String, Object> o : ((Map<String, Object>) iValue).entrySet()) {
if (items > 0)
buffer.append(OStringSerializerHelper.RECORD_SEPARATOR);
if (o != null) {
fieldTypeToString(buffer, iDatabase, OType.STRING, o.getKey());
buffer.append(OStringSerializerHelper.ENTRY_SEPARATOR);
if (o.getValue() instanceof ORecord<?>) {
if (o.getValue() instanceof ODocument)
record = (ODocument) o.getValue();
else
record = OObjectSerializerHelper.toStream(o.getValue(), new ODocument((ODatabaseRecord) iDatabase, o.getValue()
.getClass().getSimpleName()),
iDatabase instanceof ODatabaseObjectTx ? ((ODatabaseObjectTx) iDatabase).getEntityManager()
: OEntityManagerInternal.INSTANCE, iLinkedClass, iObjHandler != null ? iObjHandler
: new OUserObject2RecordHandler() {
public Object getUserObjectByRecord(ORecordInternal<?> iRecord, final String iFetchPlan) {
return iRecord;
}
public ORecordInternal<?> getRecordByUserObject(Object iPojo, boolean iIsMandatory) {
return new ODocument(iLinkedClass);
}
public boolean existsUserObjectByRID(ORID iRID) {
return false;
}
public void registerPojo(Object iObject, ORecordInternal<?> iRecord) {
}
}, null, iSaveOnlyDirty);
buffer.append(OStringSerializerHelper.PARENTHESIS_BEGIN);
// buffer.append(OStringSerializerHelper.fieldTypeToString(iLinkedType, record));
buffer.append(toString(record, null, iObjHandler, iMarshalledRecords));
buffer.append(OStringSerializerHelper.PARENTHESIS_END);
} else if (o.getValue() instanceof Map<?, ?>) {
// SUB MAP
fieldTypeToString(buffer, iDatabase, OType.EMBEDDEDMAP, o.getValue());
} else {
// EMBEDDED LITERALS
if (iLinkedType == null)